The course will start by quickly translating the programming knowledge students have from other programming languages into C++.
We will then move to more specific C++ features like pointers. The object oriented part will introduce classes and its properties and uses, encapsulations, inheritance and polymorphism. We will also look at examples of how to use these tools in different scientific applications.
Special emphasis will also be placed on Object Oriented Analysis and Design.
The last part will focus on the STL (standard template library), Graphical User Interface development and network communication.
GENERAL COMPETENCIES
The goal of the course is to learn basic object oriented (OO) programming techniques as implemented in C++. Several objectives need to be met
- The students must be able to use pointers in C++
- The students must be able to define classes, make objects with these and to use them properly.
- Students must be able to craft their classes in such a way that it respects the basic OO principles
- Students must be able to make algorithms using functional and object oriented programming in C++
- Using these basic skills, students must be able to construct a larger project
- Students need to be able to apply the basic principles of Object Oriented Analysis and Design in their chosen project.